<?php

class End {
    
    /**
     * 正常返回
     *
     * @param array $data 需要传递到客户端的事务数据数组
     * @param array $reward 需要传递到客户端的奖励数据数组
     * @return array
     */
    public static function ok(array $data = []) {
        echo json_encode(['code'=>0, 'msg'=>'', 'data'=>$data]);
        exit;
    }

    /**
     * 非法访问
     *
     * @param string $msg 错误提示字符串，默认值"非法访问"
     * @return array
     */
    public static function eIllegal($msg = "非法访问") {
        echo json_encode(['code'=>1001, 'msg'=>$msg]);
        exit;
    }

    /**
     * 用户在执行危险操作（如不安全的参数等）
     *
     * @param string $msg 错误提示字符串，默认值"危险操作"
     * @return array
     */
    public static function eDanger($msg = "危险操作") {
        echo json_encode(['code'=>2001, 'msg'=>$msg]);
        exit;
    }

    /**
     * 访问key出错
     *
     * @param string $msg 错误提示字符串，默认值"访问key出错"
     * @return array
     */
    public static function eNoKey($msg = "访问key出错") {
        echo json_encode(['code'=>3001, 'msg'=>$msg]);
        exit;
    }

    /**
     * 用户没有访问权限
     *
     * @param string $msg 错误提示字符串，默认值"没有权限"
     * @return array
     */
    public static function eNoPower($msg = "没有权限") {
        echo json_encode(['code'=>4001, 'msg'=>$msg]);
        exit;
    }

    /**
     * 参数错误
     *
     * @param string $msg 错误提示字符串，默认值"参数出错"
     * @return array
     */
    public static function eParamError($msg = "参数出错") {
        echo json_encode(['code'=>5001, 'msg'=>$msg]);
        exit;
    }

    /**
     * eLogicError
     *
     * @param string $msg 错误提示字符串，默认值"逻辑出错"
     * @return array
     */
    public static function eLogicError($msg = "逻辑出错") {
        echo json_encode(['code'=>3001, 'msg'=>$msg]);
        exit;
    }

    /**
     * eNoInterface
     *
     * @param string $msg 错误提示字符串，默认值"接口不存在"
     * @return array
     */
    public static function eNoInterface($msg = "接口不存在") {
        echo json_encode(['code'=>1001, 'msg'=>$msg]);
        exit;
    }
}
